In virtualization, a physical device is virtualized to create multiple virtual or logical devices. The virtual devices are assigned to different users so as to provide different services. Virtualization is beneficial in many applications, such as in a cloud computing environment where many concurrent users and services are supported.